/*
 * Standard FreeDesktop icons:
 * 
 * WARNING: When you add new icons you MUST ensure to use standard names as per:
 * http://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html
 *
 * If you can't find the name in the spec then you MUST search in the Adwaita,
 * Tango, Breeze, Oxigen, Faenza (now Rave-X) icone themes to find a suitable name.
 *
 * IF you really cannot find anything try at least to be consistent with other
 * existing names.
 *
 * NOTE: icons marked with an empty comment are names that are not in the 
 *       FDO spec, so they are not really standard, but seems widly used.
 *
 * NOTE: when you add a new icon you MUST add to:
 *   - this file (of course)
 *   - src/bin/elementary/test_icon.c (elementary_test -to "Icon Standard")
 *   - data/elementary/themes/Makefile.am
 *   - data/Makefile.am (only for new dirs)
 *   - data/elementary/themes/fdo/index.theme (only for new dirs)
 *   - elm_icon documentation   ?????  really?
 *   - don't forget to run "make distcheck"
 * 
 */

// Single FDO icon
#define ICO1(Cat, Name, Size)                                     \
   group { name: "elm/icon/"##Name##"/default";                   \
      min: 16 16;                                                 \
      images.image: ##Cat##"/"##Size##"/"##Name##".png" COMP;     \
      parts {                                                     \
         part { name: "base";                                     \
            desc {                                                \
               image.normal: ##Cat##"/"##Size##"/"##Name##".png"; \
               aspect: 1.0 1.0; aspect_preference: BOTH;          \
   }  }  }  }

// FDO icon with small and normal source (16 and 128px)
#define ICO2(Cat, Name)                                         \
   group { name: "elm/icon/"##Name##"/default";                 \
      min: 16 16;                                               \
      images {                                                  \
         set { name: ##Name##;                                  \
            image {                                             \
               image: ##Cat##"/16/"##Name##".png" COMP;         \
               size: 0  0  22  22;                              \
            }                                                   \
            image {                                             \
               image: ##Cat##"/128/"##Name##".png" COMP;        \
               size: 23  23  256  256;                          \
            }                                                   \
         }                                                      \
      }                                                         \
      parts {                                                   \
         part { name: "base";                                   \
            desc {                                              \
               image.normal: ##Name##;                          \
               aspect: 1.0 1.0; aspect_preference: BOTH;        \
   }  }  }  }

// Flag icon
#define FLAG(Cat, Name)                                     \
   group { name: "elm/icon/"##Name##"/default";             \
      min: 16 16;                                           \
      images.image: ##Cat##"/128/"##Name##".png" COMP;      \
      parts {                                               \
         part { name: "base";                               \
            desc {                                          \
               image.normal: ##Cat##"/128/"##Name##".png";  \
               aspect_preference: SOURCE;                   \
   }  }  }  }

////  status  /////////////////////////////////////////////////////////////
#define CTX "status"

// TODO image-loading
// TODO image-missing
// TODO sync-error
// TODO sync-synchronizing
// folder-visiting  /* in the Places category */
// folder-drag-accept /* in the Places category */
#undef CTX

////  animations  /////////////////////////////////////////////////////////////
#define CTX "animations"
// TODO process-working
#undef CTX

////  applications  ///////////////////////////////////////////////////////////
#define CTX "apps"
// TODO accessories-calculator
// TODO accessories-character-map
// TODO accessories-dictionary
// TODO accessories-text-editor
// TODO multimedia-volume-control
// TODO help-browser
// TODO preferences-desktop-accessibility
// TODO system-software-install
// TODO system-software-update
// TODO utilities-system-monitor
// TODO utilities-terminal
#undef CTX

////  categories  /////////////////////////////////////////////////////////////
#define CTX "categories"
// TODO applications-engineering
// TODO preferences-desktop-peripherals
// TODO preferences-desktop-personal
// TODO preferences-system-network
// TODO system-help
#undef CTX

////  emotions  ///////////////////////////////////////////////////////////////
#define CTX "emotions"
// TODO face-angel
// TODO face-angry
// TODO face-cool
// TODO face-crying
// TODO face-devilish
// TODO face-embarrassed
// TODO face-kiss
// TODO face-laugh
// TODO face-monkey
// TODO face-plain
// TODO face-raspberry
// TODO face-sad
// TODO face-sick
// TODO face-smile
// TODO face-smile-big
// TODO face-smirk
// TODO face-surprise
// TODO face-tired
// TODO face-uncertain
// TODO face-wink
// TODO face-worried
#undef CTX

////  international  //////////////////////////////////////////////////////////
// Country flags, ISO 3166-1 alpha-2 country code (flag-aa)
#define CTX "intl"
#undef CTX

#undef ICO1
#undef ICO2
#undef FLAG
